package com.yida.gwj.finance.mapper;

import java.util.List;

import com.yida.gwj.api.domain.GwjFinanceAccountMain;

/**
 * 总账流水Mapper接口
 *
 * @author 缴存业务管理模块
 * @date 2023-01-10
 */
public interface GwjFinanceAccountMainMapper {
    /**
     * 查询总账流水
     *
     * @param accountMainId 总账流水主键
     * @return 总账流水
     */
    public GwjFinanceAccountMain selectGwjFinanceAccountMainByAccountMainId(Long accountMainId);

    /**
     * 查询总账流水列表
     *
     * @param gwjFinanceAccountMain 总账流水
     * @return 总账流水集合
     */
    public List<GwjFinanceAccountMain> selectGwjFinanceAccountMainList(GwjFinanceAccountMain gwjFinanceAccountMain);

    /**
     * 新增总账流水
     *
     * @param gwjFinanceAccountMain 总账流水
     * @return 结果
     */
    public int insertGwjFinanceAccountMain(GwjFinanceAccountMain gwjFinanceAccountMain);

    /**
     * 修改总账流水
     *
     * @param gwjFinanceAccountMain 总账流水
     * @return 结果
     */
    public int updateGwjFinanceAccountMain(GwjFinanceAccountMain gwjFinanceAccountMain);

    /**
     * 删除总账流水
     *
     * @param accountMainId 总账流水主键
     * @return 结果
     */
    public int deleteGwjFinanceAccountMainByAccountMainId(Long accountMainId);

    /**
     * 批量删除总账流水
     *
     * @param accountMainIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteGwjFinanceAccountMainByAccountMainIds(Long[] accountMainIds);

    /**
     * 根据业务ID删除总账流水
     *
     * @param bizId 业务ID
     * @return 结果
     */
    int deleteGwjFinanceAccountMainByBizId(Long bizId);

    /**
     * 查询总账流水
     *
     * @param bizId 业务ID
     * @return 总账流水
     */
    GwjFinanceAccountMain selectGwjFinanceAccountMainByBizId(Long bizId);

    /**
     * 查询总账流水
     *
     * @param gwjFinanceAccountMain
     * @return 总账流水
     */
    GwjFinanceAccountMain getGwjFinanceAccountMain(GwjFinanceAccountMain gwjFinanceAccountMain);

    /**
     * 删除总账流水
     *
     * @param gwjFinanceAccountMain 需要删除的数据主键集合
     * @return 结果
     */
    int deleteGwjFinanceAccountMain(GwjFinanceAccountMain gwjFinanceAccountMain);

    /**
     * 修改总账流水信息
     *
     * @param gwjFinanceAccountMain 总账流水
     * @return 结果
     */
    public int updateGwjFinanceAccountMainInfo(GwjFinanceAccountMain gwjFinanceAccountMain);

}
